WEB3 Day1—BlockChain Basic 1

WEB3 Day1—BlockChain Basic 1

转型方向

从 Java 开发转型至智能合约开发。

学习资源

学习视频

推荐 patrick collins 【Cyfrin】的教学视频

同时,Cyfrin Updraft 官网提供了文字笔记和视频课程。不过,某些翻译插件的双语字幕不支持该网站,因此我选择在 YouTube 上观看完整视频,并且将两者结合起来学习。

翻译插件推荐

这里推荐一款翻译插件——沉浸式翻译

创建自己的钱包

安装 MetaMask 插件

首先,进入 MetaMask 官网,将其作为 Chrome 浏览器插件添加到浏览器中。

创建钱包

创建自己的钱包后,会得到三个关键信息:私钥(private key)、助记词(Mnemonic Key)和公钥地址(public Address)。其中,私钥和助记词极其重要,务必安全保存!因为拥有私钥就可以直接访问你的钱包账户,所以千万不能有侥幸心理。建议将助记词记录在纸上,而不是存储在电脑里,如果能记在大脑中(如使用记忆宫殿的方法)则是最安全的。三者的重要性排序为:【Mnemonic > Private Key > public Address】。

相关图示如下:
image-20250617143925337
image-20250617143938391

模拟交易

创建虚拟测试网络

登录 Tenderly 测试网站(https://tenderly.co/?mtm_campaign=partner&mtm_kwd=cyfrin ),通过该链接注册并创建账户是免费的。在网站左侧点击“virtual TestNets”,创建虚拟测试网络。
image-20250617143945197

网络设置

进行简单设置,无特定要求。设置完成后,会创建一个模拟区块链,接下来可以将其添加到 MetaMask 中。
image-20250617143952962

手动添加网络问题处理

在连接后,可能会遇到 MetaMask 中未显示创建的虚拟网络的问题,此时需要手动添加。注意,原系统默认的 chainId(11155111)无法修改,因此需要重新创建一个链,并在创建时在“custom”处修改自己的 ID。
image-20250617144007052
有其他开发者也遇到了同样的问题,可参考:https://github.com/Cyfrin/foundry-full-course-cu/discussions/4066?sort=old

注资操作

完成上述步骤后,进行注资。
image-20250617144013149

查看注资结果

注资完成后,等待几分钟,就可以在自定义虚拟网络中看到资金到账啦,仿佛瞬间“暴富”(当然这只是模拟)。
image-20250617144019117

账户间转账

在模拟网络中,从一个账户向另一个账户转账非常简单,直接进行发送操作即可。
image-20250617144024781
image-20250617144053479

另外,Tenderly 与 Cypher 有合作,账户可以续期。
image-20250617144034552

区块链数据结构

可以通过 BlockChain Demo 网站(https://andersbrownworth.com/blockchain/block )来帮助理解区块链的底层数据结构。

交易费用相关概念

交易费用(Transaction Fee)

交易费用是支付给区块生产者处理交易的奖励金额,通常通过以太币或者 Gwei 支付。

燃气价格(Gas Price)

同样以以太币或者 Gwei 来定义,燃气价格是交易中指定的每单位燃气(Gas)的成本。价格越高,交易被打包进区块的机会就越大,它用于设定交易中每单位燃气的成本。

燃气(Gas)

不要将燃气与燃气价格混淆。燃气指的是执行交易所需要的工作量,而燃气价格则是每单位工作量的成本。

交易费用的计算公式为:

Transaction fee =  gasPrice * gasUsed

简单来说,当大量用户进行交易时,特定区块的空间竞争会变得激烈,此时提高燃气价格可以在拥堵时限制交易,并优先处理部分交易。